8630. Максимальная цифра числа

 

Найдите максимальную цифру в натуральном числе n.

 

Вход. Одно натуральное число n (n < 1018).

 

Выход. Выведите максимальную цифру в числе n.

 

Пример входа

Пример выхода

2354

5

 

 

РЕШЕНИЕ

циклы

 

Анализ алгоритма

Делим число n на 10, пока результат не станет равным нулю. Последние цифры каждого результата деления соответствуют цифрам исходного числа n. Определяем максимальное значение среди этих цифр.

 

Реализация алгоритма

Читаем входное значение n.

 

scanf("%lld", &n);

 

В переменной res находим максимальную цифру числа n.

 

res = 0;

 

Перебираем все цифры числа n. Для этого последовательно делим n на 10 и извлекаем его последнюю цифру d = n % 10. Среди всех таких цифр d определяем максимальное значение.

 

while (n > 0)

{

  d = n % 10;

  if (d > res) res = d;

  n = n / 10;

}

 

Выводим ответ.

 

printf("%d\n", res);

 

Java реализация

 

import java.util.*;

 

public class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);     

    long n = con.nextLong();

    long res = 0;

    while (n > 0)

    {

      long d = n % 10;

      if (d > res) res = d;

      n = n / 10;

    }

 

    System.out.println(res);

    con.close();

  }

}

 

Python реализация

Читаем входное число как строку.

 

s = input()

 

Функция max() возвращает максимальный символ в строке.

·     Если строка состоит только из цифр, то max() находит наибольшую цифру (например, для 534543 результат будет 5).

·     Если строка содержит буквы, символы сравниваются в лексикографическом порядке.

Выводим ответ.

 

print(max(s))